// pages/user/authentication/carType/carType.js

const app = getApp();
let api = require('../../../../utils/api.js');

Page({

  /**
   * 页面的初始数据
   */
  data: {
    car: {
      long: ' _ ',
      height: ' _ ',
      width: ' _ ',
      weight: ' _ ',
      bulk: ' _ '
    },
    frontImg: {
      id: 0,
      url: ''
    },
    leftImg: {
      id: 0,
      url: ''
    },
    reverseImg: {
      id: 0,
      url: ''
    },
    rightImg: {
      id: 0,
      url: ''
    },
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  //  onShareAppMessage: function() {

//  },

  /**
   * 选择图片
   */
  uploadImg: function(token, type) {
    var _this = this;
    var url = api.baseUrl;
    wx.chooseImage({
      count: 1, // 默认9
      sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图，默认二者都有
      sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机，默认二者都有
      success: function(res) {
        // 返回选定照片的本地文件路径列表，tempFilePath可以作为img标签的src属性显示图片
        var tempFilePaths = res.tempFilePaths;
        //这里是上传操作
        wx.uploadFile({
          url: url+'/file/img/upload', //里面填写你的上传图片服务器API接口的路径 
          filePath: tempFilePaths[0], //要上传文件资源的路径 String类型 
          name: 'file', //按个人情况修改，文件对应的 key,开发者在服务器端通过这个 key 可以获取到文件二进制内容，(后台接口规定的关于图片的请求参数)
          header: {
            "Content-Type": "multipart/form-data", //记得设置
            //和服务器约定的token, 一般也可以放在header中
            'token': token
          },

          success: function(res) {
            if (res.statusCode == 200) {
              var data = JSON.parse(res.data);
              var selfImg = {
                id: data.result.id,
                url: data.result.thumbUrl
              }
              _this.setData({
                [type]: selfImg
              });
            }
          }
        })
      }
    })
  },
  /**
   * 上传车辆正面照
   */
  chooseFrontImg: function(e) {
    var _this = this;
    var token = wx.getStorageSync('TOKEN');
    _this.uploadImg(token, 'frontImg')
  },
  /**
   * 上传车辆反面照
   */
  chooseReverseImg: function(e) {

    var _this = this;
    var token = wx.getStorageSync('TOKEN');
    _this.uploadImg(token, 'reverseImg')
  },

  /**
   * 上传车辆左面照
   */
  chooseLeftImg: function(e) {

    var _this = this;
    var token = wx.getStorageSync('TOKEN');
    _this.uploadImg(token, 'leftImg')
  },

  /**
   * 上传车辆右面照
   */
  chooseRightImg: function(e) {

    var _this = this;
    var token = wx.getStorageSync('TOKEN');
    _this.uploadImg(token, 'rightImg')
  },

  /**
   * 提交
   */
  sumbit: function(e) {

    var _this = this;
    var token = wx.getStorageSync('TOKEN');
    if (_this.data.frontImg.url == '' || _this.data.reverseImg.url == '' || _this.data.rightImg.url == '' || _this.data.leftImg.url == '' || _this.data.car.vehicleModel == undefined) {
      wx.showToast({
        title: '请填提交完整信息',
        icon: 'none'
      })
      return;
    }

    var param = {
      "frontImg": _this.data.frontImg.id,
      "reverseImg": _this.data.reverseImg.id,
      "leftImg": _this.data.leftImg.id,
      "rightImg": _this.data.rightImg.id,

      "vehicleHeight": _this.data.car.height,
      "vehicleLength": _this.data.car.long,
      "vehicleLoad": _this.data.car.weight,
      "vehicleModel": _this.data.car.vehicleModel,
      "vehicleVolume": _this.data.car.bulk,
      "vehicleWidth": _this.data.car.width
    }
    api._post('/chauffeur/vehicle/auth', param, token).then(res => {
      if (res.code == 200) {

        wx.navigateBack({
          delta: 1,
        })
      }
    })
  },

  // 编辑参数
  setParam: function() {
    this.setData({
      paramDialogShow: true,
    })
  },

  // 关闭弹框
  _cancelEvent: function(e) {
    this.setData({
      paramDialogShow: false,
    });
  },

  inputWacth: function(e) {
   // console.log(e);
    var that = this;
    let item = e.currentTarget.dataset.model;
    let value = e.detail.value;
    var data = that.data.car;
    data[item] = value
    that.setData({
      inputData: data
    });
  },
  _nameConfirmEvent: function(e) {

    var that = this;
    var data = that.data.inputData
    if (data == undefined || data.long == ' _ ' || data.height == ' _ ' || data.width == ' _ ' || data.weight == ' _ ' || data.bulk == ' _ ' || data.vehicleModel == ' _ ') {
      wx.showToast({
        title: '请填提交完整信息',
        icon: 'none'
      })
      return
    }
    that.setData({
      car: data,
      inputData: []
    });
    that._cancelEvent();
  }
})